<?php
	/**
	 * Created by PhpStorm.
	 * User: mybook-lhp
	 * Date: 18/7/9
	 * Time: 下午12:00
	 * 注意：php函数不能禁用shell_exec，禁用后就没办法执行系统命令了。
	 * 在服务器上用sudo命令让www用户克隆项目到本地，这样以后webhook推送后才能保证系统是用www用户更新文件，才不会出现权限的问题
	 *
	 * sudo -Hu www git clone git_URL
	 */
	$recommand = shell_exec('cd /opt/lampp/htdocs/timewoods/ && /usr/bin/git pull && whoami');
	$whoami = shell_exec(' whoami');
	echo '很棒:' . date('y-m-d H:i:s') . "{{$recommand}}";
	echo '很棒:' . date('y-m-d H:i:s') . "{{$whoami}}";
	die;
//git webhook 自动部署脚本
//项目存放物理路径
	$path = dirname(__DIR__);
	$requestBody = file_get_contents("php://input");
	if (empty($requestBody))
	{
		die('send fail');
	}
	$content = json_decode($requestBody, true);
	//若是主分支且提交数大于0
	if ($content['ref'] == 'refs/heads/master' && $content['total_commits_count'] > 0)
	{
		$command = "cd {$path}/ && /usr/bin/git pull ";
		$res = shell_exec($command);//以www用户运行
		$res_log = '<-------------------------' . PHP_EOL;
		$res_log .= '命令:' . $command . PHP_EOL;
		$res_log .= '输出:' . $res . PHP_EOL;
		$res_log .= $content['user_name'] . ' 在' . date('Y-m-d H:i:s') . '向' . $content['repository']['name'] . '项目的' . $content['ref'] . '分支push了' . $content['total_commits_count'] . '个commit：' . PHP_EOL;

		$res_log .= '------------------------->' . PHP_EOL;
		file_put_contents(dirname(__DIR__) . "/runtime/log/git-webhook.txt", $res_log, FILE_APPEND);//追加写入
	}
	$content['title'] = '很棒:' . date('y-m-d H:i:s');
	echo '<pre>';
	var_dump($content);